package com.offcn.coder;

import javax.sound.midi.Soundbank;

/*
如果关闭一个线程，一个线程能否使用stop()和destroy()关闭，开启一个线程，当主线程执行完毕以后，该线程也就随之结束，如何实现。
一个线程中主线程结束，其余线程会随之结束吗？
一个线程中主线程的结束不会影响其与线程，其与线程会正常执行。线程分为守护线程和非守护线程。程序中创建的线程默认是非守护线程。


如果关闭一个线程，通过设置线程的标志位来实现对线程的控制。
 */
public class Test01 {
    public static void main(String[] args) {
        Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
                while (true) {
                    try {
                        System.out.println("Test");
                        Thread.sleep(500);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }

            }

        });
        //设置一个线程为守护线程需要在启动前设置
        t1.setDaemon(true);
        t1.start();
        for (int i = 0; i <10 ; i++) {
            System.out.println("main exit");
            try {
                Thread.sleep(500);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }

    }
}
